今天來講一些使用套件來方便我們做自動化的一些流程,今天要提的是lint-staged與husky.
首先先安裝
yarn add -D lint-staged husky
再建立一個.lintstagedrc,來針對我們要針對哪些特定的檔案進行eslint的檢查
// array裡面放的是檢查的一些規則,可以參考我下面附的reference.
{
"*.+{js|ts|tsx}": ["eslint"],
"**/*.+(js|json|ts|tsx)": [
"prettier --write",
"git add"
]
}
與.huskyrc
{
"hooks": {
"pre-commit": "lint-staged"
}
}
因此我們在每次commit前,husky就會啟動lint-steged來檢查你在.lint-staged裡面所加入的rules來在commit前進行code syntax的檢查,例如我們可以在第二個規則,我們會將所有的code用prettier來檢查一次並且複寫上去最後再幫我們執行git add,因此可以在最後一步幫我們把關所有的code是否符合我們制定的規範.
ref: https://github.com/okonet/lint-staged